<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<!DOCTYPE html
      PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:c="http://java.sun.com/jsp/jstl/core"
      xmlns:f="http://java.sun.com/jsf/core">
<head>
    <title>hideNoSelection with Value Expression</title>
</head>
<body>
<c:if test="#{empty requestScope.selectedHobbit}">
  <c:set target="#{requestScope}" property="selectedHobbit" value="Frodo"/>
</c:if>
<h:form id="f">

    <p>
        Initially hideNoSelectionOption evaluates to true. As the selectOneMenu
        has a non-null value different from the No Selection value, the No
        Selection option should be hidden.
        When the page is submitted with a value different from 'Frodo', the
        hideNoSelectionOption evaluates to false, as such on page re-render, the
        No Selection option
        should be shown.
    </p>
    <h:selectOneMenu id="selectItemNoSelectedValue"
                     value="#{requestScope['selectedHobbit']}"
                     hideNoSelectionOption="#{requestScope['selectedHobbit'] eq 'Frodo'}">
        <f:selectItem noSelectionOption="true" itemLabel="No Selection"
                      itemValue="No Selection"/>
        <f:selectItems value="#{selectItemsBean.hobbits}"/>
    </h:selectOneMenu>

    <h:commandButton id="command" value="Submit"/>
</h:form>
<h:messages id="messages"/>
</body>
</html>
